05 理论学科
数据结构和算法
- 《算法》算法领域经典的参考书,全面介绍了关于算法和数据结构的必备知识,还给出了每位程序员应知应会的 50 个算法,并提供了实际代码和图解。或者看更有趣点的《算法图解》
- 《算法导论》偏理论方面
- 《编程珠玑》通过一些非常实际的问题,并以其独有的洞察力和创造力,来引导读者理解并学会解决这些问题的方法,也是一本可以改善你思维方式的书
- LeetCode 做算法训练的在线网站,基本有两类题:
- 基础算法题,对最基础的算法的思路有非常扎实的了解和训练
- 编程题,训练对各种情况的考虑,以及对程序代码组织的掌控
- Data Structure Visualizations 数据结构动画图的网站
其它理论基础知识
《数据结构与算法分析》精炼并强化了他对算法和数据结构方面创新的处理方法,着重阐述了抽象数据类型的概念,并对算法的效率、性能和运行时间进行了分析
《数据库系统概念》全面介绍了数据库系统的各种知识,透彻阐释数据库管理的基本概念
《现代操作系统》集中讨论了操作系统的基本原理,包括进程、线程、存储管理、文件系统、输入 / 输出、死锁等,同时还包含了有关计算机安全、多媒体操作系统、掌上计算机操作系统、微内核、多核处理机上的虚拟机以及操作系统设计等方面的内容
《计算机网络》通过自顶向下方法,从应用层开始沿协议栈向下讲解计算机网络的基本原理
《计算机程序的构造和解释》主要证实了很多程序是怎么构造出来的,以及程序的本质是什么
《编译原理》全面、深入地探讨了编译器设计方面的重要主题